home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / FGL402F.ZIP / EXFOR.ARJ / TEMP / 12-05.FOR < prev    next >
Text File  |  1995-01-20  |  2KB  |  58 lines

  1. $INCLUDE: 'C:\FG\FASTGRAF.FI'
  2.  
  3.       PROGRAM MAIN
  4.  
  5.       INTEGER VISUAL, HIDDEN
  6.       PARAMETER (VISUAL=0)
  7.       PARAMETER (HIDDEN=1)
  8.  
  9.       INTEGER NEW_MODE, OLD_MODE
  10.       INTEGER FRAME, OFFSET
  11.       INTEGER I
  12.       INTEGER STATUS
  13.       INTEGER FG_ALLOCATE, FG_BESTMODE, FG_FREEPAGE, FG_GETMODE
  14.  
  15. C  initialize the video environment
  16.  
  17.       NEW_MODE = FG_BESTMODE(320,200,2)
  18.       IF (NEW_MODE .LT. 0 .OR. NEW_MODE .EQ. 12) THEN
  19.          STOP 'This program requires a 320 x 200 color graphics mode.'
  20.       END IF
  21.       OLD_MODE = FG_GETMODE()
  22.       CALL FG_SETMODE(NEW_MODE)
  23.       STATUS = FG_ALLOCATE(HIDDEN)
  24.  
  25. C  draw the background in the upper left corner
  26.  
  27.       CALL FG_SETPAGE(HIDDEN)
  28.       CALL FG_SETCOLOR(1)
  29.       CALL FG_RECT(0,95,0,49)
  30.       CALL FG_SETCOLOR(15)
  31.       CALL FG_MOVE(48,25)
  32.       CALL FG_ELLIPSE(20,20)
  33.  
  34. C  copy it to the center of the visual page
  35.  
  36.       CALL FG_TRANSFER(0,95,0,49,112,124,HIDDEN,VISUAL)
  37.  
  38. C  slide the object across the background three times
  39.  
  40.       CALL FG_SETCOLOR(10)
  41.       DO 10 I = 0,35
  42.          FRAME  = MOD(I,12)
  43.          OFFSET = 10 * FRAME - 10
  44.          CALL FG_TRANSFER(0,95,20,29,112,105,HIDDEN,HIDDEN)
  45.          CALL FG_RECT(112+OFFSET,131+OFFSET,96,105)
  46.          CALL FG_TRANSFER(112,207,96,105,112,105,HIDDEN,VISUAL)
  47.          CALL FG_WAITFOR(2)
  48. 10    CONTINUE
  49.  
  50. C  restore the original video mode and return to DOS
  51.  
  52.       STATUS = FG_FREEPAGE(HIDDEN)
  53.       CALL FG_SETMODE(OLD_MODE)
  54.       CALL FG_RESET
  55.  
  56.       STOP ' '
  57.       END
  58.